home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 1
/
Cream of the Crop 1.iso
/
PROGRAM
/
QBWIZ12.ARJ
/
QBWIZ.MAN
< prev
next >
Wrap
Text File
|
1991-02-20
|
4KB
|
79 lines
The QuickBASIC Wizard's Library
QBWIZ Copyright (c) 1990 Thomas G. Hanlin III
This constitutes technical documentation for the QBWIZ library. It includes
a reference of some useful QuickBASIC internal variables.
Information on the internal structure of QuickBASIC and BASCOM was obtained
by my own work and is not by any means guaranteed by Microsoft. Microsoft
can and will change the internals at any time it suits them. They're willing
enough to change documented features, so don't expect the undocumented ones
to remain the same!
However, this information is correct, to the best of my knowledge, for
QuickBASIC 4.5. It should also hold true as far back as QuickBASIC 4.0 and
for the BASCOM 6.0 compiler. Since these are all "old" versions, it should
be safe to assume that they will not be changed.
Note that the /ML option must be used when assembling the .ASM sources. This
is not usually needed with BASIC, which expects its external names to be
converted to uppercase. Here, however, we're accessing BASIC internal names,
which don't follow the same rules.
On to the gory details!
Some QuickBASIC Internal Variables
__acmdln dword ptr original command line
b$ActPage byte active display page (CGA/EGA/VGA text modes)
b$Adapter byte display adapter type (1 MDA, 2 CGA, 4 EGA, 8 VGA)
b$BackColor byte default background color
b$BiosMode byte display mode (BIOS numbering)
b$BorderColor byte current border color
b$Burst byte whether color burst is on (0 no, 1 yes)
b$FBColors byte default color/attribute (combined fore & back)
b$ForeColor byte default foreground color
b$IOFLAG byte output redirection state (if b$IOFLAG AND 2, redir)
b$ScreenMode byte display mode (BASIC numbering)
b$ScrHeight byte height of the screen (rows)
b$ScrWidth byte width of the screen (columns)
b$seg word segment defined by DEF SEG statement
b$UsrCsrOn byte whether the cursor is visible (0 no, 1 yes)
b$UsrCsrStart byte cursor starting scan line
b$UsrCsrStop byte cursor ending scan line
b$VisPage byte visible display page (CGA/EGA/VGA text modes)
b$WDOBOTTOM byte bottom row of window defined by VIEW PRINT
b$WDOTOP byte top row of window defined by VIEW PRINT
Access Routines
Routine name Source file Internal variable used
ACTPAGE PAGE.ASM b$ActPage
BACKCOLOR BACK.ASM b$BackColor
BORDERCOLOR BORDER.ASM b$BorderColor
COLORBURST COLORB.ASM b$Burst
COMMANDLINE COMMANDL.ASM __acmdln
CRT CRT.ASM b$Adapter
CURSORSTART CSTART.ASM b$UsrCsrStart
CURSORSTOP CSTOP.ASM b$UsrCsrStop
DEFSEG DEFSEG.ASM b$seg
ERRLEVEL ERRLEVEL.ASM B$terminate (label)
FORECOLOR FORE.ASM b$ForeColor
PRINTERWIDTH PRTWIDTH.ASM b$LPTFDB
SCREENHEIGHT SHEIGHT.ASM b$ScrHeight
SCREENMODE SMODE.ASM b$ScreenMode
SCREENWIDTH SWIDTH.ASM b$ScrWidth
SHOWCURSOR SHOWCUR.ASM b$UsrCsrOn
VIEWBOTTOM VIEW.ASM b$WDOBOT
VIEWTOP VIEW.ASM b$WDOTOP
VISPAGE PAGE.ASM b$VisPage